1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 package org.smartcrawler.common;
28
29 import java.util.Hashtable;
30 import java.util.StringTokenizer;
31 import org.apache.log4j.Logger;
32
33 /***
34 *
35 *
36 * @author <a href="mailto:pozzad@alice.it">Davide Pozza</a>
37 * @version <tt>$Revision: 1.2 $</tt>
38 */
39 public class AbstractParametrizableComponent {
40
41 private Hashtable<String, String> parameters = new Hashtable<String, String>();
42 private static Logger log = SCLogger.getLogger(AbstractParametrizableComponent.class);
43
44 /***
45 * Creates a new instance of AbstractParametrizableComponent
46 */
47 public AbstractParametrizableComponent() {
48 }
49
50 /***
51 *
52 * @param name
53 * @return
54 */
55 public String[] getParameters(String name) {
56
57 String links = parameters.get(name);
58 StringTokenizer stk = new StringTokenizer(links);
59 String[] res = new String[stk.countTokens()];
60 int i = 0;
61 while(stk.hasMoreTokens()) {
62 String tok = stk.nextToken().trim();
63 if (tok.length() > 0) {
64 res[i++] = tok;
65 }
66 }
67 return res;
68
69 }
70
71 /***
72 *
73 * @param name
74 * @return
75 */
76 public String getParameter(String name) {
77 if (parameters.containsKey(name)) {
78 return parameters.get(name);
79 } else {
80 log.warn("Parameter " + name + " not found.");
81 return null;
82 }
83 }
84
85 /***
86 *
87 * @param parameters
88 */
89 public void setParameters(Hashtable parameters) {
90 this.parameters = parameters;
91 }
92 }